package com.source.baseData.entity;

import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 脚标机的实体类
 * </p>
 *
 * @author 枫情
 * @since 2021-02-06
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="BarcodeMachine对象", description="")
@NoArgsConstructor
@AllArgsConstructor
@ExcelTarget("barcodeMachine")
public class BarcodeMachine implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "脚标机ID")
    @TableId(value = "barcodeMachineId", type = IdType.ASSIGN_ID)
    private String barcodeMachineId;

    @ApiModelProperty(value = "脚标机编号")
    @TableField("barcodeMachineNumber")
    private String barcodeMachineNumber;

    @ApiModelProperty(value = "价格")
    private Double price;

    @ApiModelProperty(value = "出厂日期")
    @TableField("productDate")
    private Date productDate;

    @ApiModelProperty(value = "所属屠宰场经度")
    private String longitude;

    @ApiModelProperty(value = "所属屠宰场纬度")
    private String latitude;

    @ApiModelProperty(value = "创建时间")
    @TableField(value = "createDate", fill = FieldFill.INSERT)
    private Date createDate;

    @ApiModelProperty(value = "销售/租用日期")
    @TableField("tradeDate")
    private Date tradeDate;

    @ApiModelProperty(value = "照片")
    private String image;

//    @ApiModelProperty(value = "机器状态（0未发放，1已发放）")
//    private String behavior;

    @ApiModelProperty(value = "备注")
    private String msg;

    @ApiModelProperty(value = "0未删除，1已删除")
    @TableLogic
    @TableField(value = "isDelete",fill = FieldFill.INSERT)
    private Boolean isDelete;

    @ApiModelProperty(value = "用户信息版本")
    private String userMsgVersion;

    @ApiModelProperty(value = "禽类信息版本")
    private String poultryMsgVersion;

    @ApiModelProperty(value = "根据id追溯发放的最新情况")
    @TableField("houseGrantId")
    private String houseGrantId;

    @ApiModelProperty(value = "根据id追溯回收的最新情况")
    @TableField("houseRevokeId")
    private String houseRevokeId;

    //@ApiModelProperty("出库状态（0出库/1未出库）")
    @ApiModelProperty("出库状态（0发放/1未发放）")
    @TableField("delivery_status")
    private String deliveryStatus;


}
